<template>
  <div id="aCoursesList" class="bg-fa of">
    <!-- /课程详情 开始 -->
    <section class="container">
      <section class="path-wrap txtOf hLh30">
        <a href="#" title class="c-999 fsize14">首页</a>
        \
        <a href="#" title class="c-999 fsize14">{{
          courseWebVo.subjectLevelOne
        }}</a>
        \
        <span class="c-333 fsize14">{{ courseWebVo.subjectLevelTwo }}</span>
      </section>
      <div>
        <article class="c-v-pic-wrap" style="height: 357px">
          <section class="p-h-video-box" id="videoPlay">
            <img
              :src="courseWebVo.cover"
              :alt="courseWebVo.title"
              class="dis c-v-pic"
            />
          </section>
        </article>
        <aside class="c-attr-wrap">
          <section class="ml20 mr15">
            <h2 class="hLh30 txtOf mt15">
              <span class="c-fff fsize24">{{ courseWebVo.title }}</span>
            </h2>
            <section class="c-attr-jg">
              <span class="c-fff">价格：</span>
              <b class="c-yellow" style="font-size: 24px"
                >￥{{ courseWebVo.price }}</b
              >
            </section>
            <section class="c-attr-mt c-attr-undis">
              <span class="c-fff fsize14"
                >主讲： {{ courseWebVo.teacherName }}&nbsp;&nbsp;&nbsp;</span
              >
            </section>
            <section class="c-attr-mt of">
              <span class="ml10 vam">
                <em class="icon18 scIcon"></em>
                <a class="c-fff vam" title="收藏" href="#">收藏</a>
              </span>
            </section>
            <section
              v-if="isbuy || Number(courseWebVo.price) === 0"
              class="c-attr-mt"
            >
              <a href="#" title="立即观看" class="comm-btn c-btn-3">立即观看</a>
            </section>
            <section v-else class="c-attr-mt">
              <a
                @click="createOrders"
                href="javascript:void(0)"
                title="立即购买"
                class="comm-btn c-btn-3"
                >立即购买</a
              >
            </section>
          </section>
        </aside>
        <aside class="thr-attr-box">
          <ol class="thr-attr-ol clearfix">
            <li>
              <p>&nbsp;</p>
              <aside>
                <span class="c-fff f-fM">购买数</span>
                <br />
                <h6 class="c-fff f-fM mt10">{{ courseWebVo.buyCount }}</h6>
              </aside>
            </li>
            <li>
              <p>&nbsp;</p>
              <aside>
                <span class="c-fff f-fM">课时数</span>
                <br />
                <h6 class="c-fff f-fM mt10">{{ courseWebVo.lessonNum }}</h6>
              </aside>
            </li>
            <li>
              <p>&nbsp;</p>
              <aside>
                <span class="c-fff f-fM">浏览数</span>
                <br />
                <h6 class="c-fff f-fM mt10">{{ courseWebVo.viewCount }}</h6>
              </aside>
            </li>
          </ol>
        </aside>
        <div class="clear"></div>
      </div>
      <!-- /课程封面介绍 -->
      <div class="mt20 c-infor-box">
        <article class="fl col-7">
          <section class="mr30">
            <div class="i-box">
              <div>
                <section id="c-i-tabTitle" class="c-infor-tabTitle c-tab-title">
                  <a name="c-i" class="current" title="课程详情">课程详情</a>
                </section>
              </div>
              <article class="ml10 mr10 pt20">
                <!-- /课程介绍 -->
                <div>
                  <h6 class="c-i-content c-infor-title">
                    <span>课程介绍</span>
                  </h6>
                  <div class="course-txt-body-wrap">
                    <section class="course-txt-body">
                      <p v-html="courseWebVo.description"></p>
                    </section>
                  </div>
                </div>
                <!-- /课程大纲 -->
                <div class="mt50">
                  <h6 class="c-g-content c-infor-title">
                    <span>课程大纲</span>
                  </h6>
                  <section class="mt20">
                    <div class="lh-menu-wrap">
                      <menu id="lh-menu" class="lh-menu mt10 mr10">
                        <ul>
                          <!-- 文件目录 -->
                          <li
                            class="lh-menu-stair"
                            v-for="chapter in chapterVideoList"
                            :key="chapter.id"
                          >
                            <a
                              href="javascript: void(0)"
                              :title="chapter.title"
                              class="current-1"
                            >
                              <em class="lh-menu-i-1 icon18 mr10"></em>
                              {{ chapter.title }}
                            </a>

                            <ol class="lh-menu-ol" style="display: block">
                              <li
                                class="lh-menu-second ml30"
                                v-for="video in chapter.children"
                                :key="video.id"
                              >
                                <a
                                  :href="'/player/' + video.videoSourceId"
                                  target="_blank"
                                >
                                  <span class="fr">
                                    <i class="free-icon vam mr10">免费试听</i>
                                  </span>
                                  <em class="lh-menu-i-2 icon16 mr5">&nbsp;</em>
                                  {{ video.title }}
                                </a>
                              </li>
                            </ol>
                          </li>
                        </ul>
                      </menu>
                    </div>
                  </section>
                </div>
                <!-- /课程评论 -->
                <div class="mt50">
                  <h6 class="c-g-content c-infor-title">
                    <span>课程评论</span>
                  </h6>
                  <section class="mt20">
                    <ul>
                      <li class="unBr" style="display: flex">
                        <aside style="margin-right: 16px">
                          <img
                            width="50"
                            height="50"
                            class="picImg"
                            :src="loginInfo.avatar"
                          />
                        </aside>
                        <div class="of" style="width: 100%">
                          <section class="n-reply-wrap">
                            <fieldset>
                              <textarea
                                name=""
                                v-model="comment.content"
                                placeholder="输入您要评论的文字"
                                id="commentContent"
                              ></textarea>
                            </fieldset>
                            <p class="of mt5 tar pl10 pr10">
                              <span class="fl"
                                ><tt
                                  class="c-red commentContentmeg"
                                  style="display: none"
                                ></tt
                              ></span>
                              <el-button
                                type="primary"
                                size="small"
                                @click="addComment"
                              >回复</el-button>
                            </p>
                          </section>
                        </div>
                      </li>
                    </ul>
                  </section>
                  <section
                    v-if="data.total"
                    class="question-list lh-bj-list pr"
                  >
                    <ul class="pr10">
                      <li
                        v-for="(comment, index) in data.list"
                        v-bind:key="index"
                      >
                        <aside class="noter-pic">
                          <img
                            width="50"
                            height="50"
                            class="picImg"
                            :src="comment.avatar"
                          />
                        </aside>
                        <div class="of">
                          <span class="fl">
                            <font class="fsize12 c-blue">
                              {{ comment.nickname }}</font
                            >
                            <font class="fsize12 c-999 ml5">评论：</font></span
                          >
                        </div>
                        <div class="noter-txt mt5">
                          <p>{{ comment.content }}</p>
                        </div>
                        <div class="of mt5">
                          <span class="fr"
                            ><font class="fsize12 c-999 ml5">{{
                              comment.gmtCreate
                            }}</font></span
                          >
                        </div>
                      </li>
                    </ul>
                  </section>
                  <!-- 公共分页 开始 -->
                  <div v-if="data.total" class="paging">
                    <!-- undisable这个class是否存在，取决于数据属性hasPrevious -->
                    <a
                      :class="{ undisable: !data.hasPrevious }"
                      href="#"
                      title="首页"
                      @click.prevent="gotoPage(1)"
                      >首</a
                    >
                    <a
                      :class="{ undisable: !data.hasPrevious }"
                      href="#"
                      title="前一页"
                      @click.prevent="gotoPage(data.pageNum - 1)"
                      >&lt;</a
                    >
                    <a
                      v-for="page in data.pages"
                      :key="page"
                      :class="{
                        current: data.pageNum == page,
                        undisable: data.pageNum == page,
                      }"
                      :title="'第' + page + '页'"
                      href="#"
                      @click.prevent="gotoPage(page)"
                      >{{ page }}</a
                    >
                    <a
                      :class="{ undisable: !data.hasNext }"
                      href="#"
                      title="后一页"
                      @click.prevent="gotoPage(data.pageNum + 1)"
                      >&gt;</a
                    >
                    <a
                      :class="{ undisable: !data.hasNext }"
                      href="#"
                      title="末页"
                      @click.prevent="gotoPage(data.pages)"
                      >末</a
                    >
                    <div class="clear" />
                  </div>
                  <!-- 公共分页 结束 -->
                </div>
              </article>
            </div>
          </section>
        </article>
        <aside class="fl col-3">
          <div class="i-box">
            <div>
              <section class="c-infor-tabTitle c-tab-title">
                <a title href="javascript:void(0)">主讲讲师</a>
              </section>
              <section class="stud-act-list">
                <ul style="height: auto">
                  <li>
                    <div class="u-face">
                      <a href="#">
                        <img
                          :src="courseWebVo.avatar"
                          width="50"
                          height="50"
                          alt
                        />
                      </a>
                    </div>
                    <section class="hLh30 txtOf">
                      <a class="c-333 fsize16 fl" href="#">{{
                        courseWebVo.teacherName
                      }}</a>
                    </section>
                    <section class="hLh20 txtOf">
                      <span class="c-999">{{ courseWebVo.intro }}</span>
                    </section>
                  </li>
                </ul>
              </section>
            </div>
          </div>
        </aside>
        <div class="clear"></div>
      </div>
    </section>
    <!-- /课程详情 结束 -->
  </div>
</template>

<script>
import courseApi from "@/api/course";
import ordersApi from "@/api/orders";
import CommentApi from "@/api/commonedu";
import loginApi from "@/api/login";
export default {
  /* asyncData({ params, error }) {
    return courseApi.getCourseInfo(params.id).then((response) => {
      console.log(response.data.data);
      return {
        courseId: params.id,
        courseWebVo: response.data.data.courseWebVo,
        chapterVideoList: response.data.data.chapterVoList,
        isbuy: response.data.data.isBuy,
      };
    });
  }, */
  data() {
    return {
      data: {},
      query: {
        pageNum: 1,
        pageSize: 4,
        id: "",
      },
      comment: {
        content: "",
        courseId: "",
      },
      courseId: "",
      courseWebVo: {},
      chapterVideoList: [],
      isbuy: false,
      loginInfo: {},
    };
  },
  created() {
    //在页面渲染之前执行
    this.initCourseInfo();
    this.initComment();
  },
  methods: {
    //查询课程详情信息
    initCourseInfo() {
      // console.log(this.$route.params.id);
      this.courseId = this.$route.params.id;
      this.query.id = this.$route.params.id;
      courseApi.getCourseInfo(this.courseId).then((response) => {
        this.courseWebVo = response.data.data.courseWebVo;
        this.chapterVideoList = response.data.data.chapterVoList;
        this.isbuy = response.data.data.isBuy;
        //调用接口，根据token值获取用户信息
        loginApi.getLoginUserInfo().then((response) => {
          //console.log('################'+response.data.data)
          this.loginInfo = response.data.data?response.data.data:{avatar:"https://th-guli-file.oss-cn-guangzhou.aliyuncs.com/avatar/default-tea-img.gif"};
        });
      });
    },
    //生成订单
    createOrders() {
      ordersApi.createOrders(this.courseId).then((response) => {
        if(response.data.code==200){
          //获取返回订单号
          //生成订单之后，跳转订单显示页面
          this.$router.push({ path: "/orders/" + response.data.data.orderId });
        }
      });
    },
    initComment() {
      CommentApi.getCommentList(this.query).then((response) => {
        this.data = response.data.data;
      });
    },
    addComment() {
      if(!this.comment.content)return;
      this.comment.courseId = this.courseId;
      this.comment.teacherId = this.courseWebVo.teacherId;
      CommentApi.addComment(this.comment).then((response) => {
        if (response.data.success) {
          this.comment.content = "";
          this.initComment();
        }
      });
    },
    gotoPage(page) {
      this.query.pageNum = page;
      CommentApi.getCommentList(this.query).then((response) => {
        this.data = response.data.data;
      });
    },
  },
};
</script>
